/*
 * Copyright (c) 2023.11.29 Fengxun
 * Version:5.2.2
 */

const {
  getCheckpointList,
} = require("../../utils/initdata")
const {
  getPageConfig
} = require("../../utils/custom_loading");
// pages/main/waiting.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    tip_word: '',
    showTips: false,
    showPrivacy: false,
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    // 初始化配置
    let tip_words = [
      '遇到不好回答的问题，不要着急选择答案。',
      'Don\'t rush to an answer that you are not sure.',
      '在进展页面里，有重来功能供你选择。',
      'If you want to do this game again, you can click RESET in the progress page.',
    ]

    const config = getPageConfig('waiting')
    if (config) {
      this.setData({
        config: config
      })
      tip_words = config.tips === undefined ? [] : config.tips
    }

    wx.getPrivacySetting({
      success: res => {
        console.log(res) // 返回结果为: res = { needAuthorization: true/false, privacyContractName: '《xxx隐私保护指引》' }
        if (res.needAuthorization) {
          // 需要弹出隐私协议
          this.setData({
            tip_word: "根据法律规定，开发者仅处理实现小程序功能所必要的信息。本小程序在运行过程中仅收集以下必要信息：\n --收集你的昵称、头像\n --收集你的位置信息。",
            showPrivacy: true
          })
        } else {
          // 用户已经同意过隐私协议，所以不需要再弹出隐私协议，也能调用隐私接口
          let total = tip_words.length
          let index = Math.floor(Math.random() * total)
          this.setData({
            showTips: true,
            tip_word: tip_words[index]
          })
          self = this
          setTimeout(function () {
            self.jumpToMain()
          }, 2000)
        }
      },
      fail: () => {},
      complete: () => {}
    })
  },

  handleAgreePrivacyAuthorization() {
    // 用户点击同意按钮后
    this.jumpToMain()
  },


  jumpToMain() {
    // 判断导航到功能页面
    const checkpoints = getCheckpointList()
    if (checkpoints.length > 0) {
      if (wx.getStorageSync('admin')) {
        // 导航到管理页面
        wx.redirectTo({
          url: '/pages/admin/map',
        })
      } else if (wx.getStorageSync('welcome')) {
        // 默认导航到第一个任务（欢迎页面）
        wx.redirectTo({
          url: 'task?id=WELCOME',
        })
      } else {
        // 导航到关卡列表
        wx.redirectTo({
          url: 'index',
        })
      }
    } else {
      // 导航到登录页面
      wx.redirectTo({
        url: 'login',
      })
    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {},

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})